Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

133
Vistas
¿Por qué tengo un valor indefinido cuando intento leer objeto[clave].valor?

Quiero algo similar a esto:

 Cars { "test-01-test" : { brand: 'anybrand', color: 'blue, }

Quiero Autos como Objeto y el id "test-01-test" como Objeto también.

Entonces puedo leerlo así:

 console.log(this.cars["test-01-test"].color) //result should be blue

Intenté esto en mi función de datos.

 cars : { id : { brand : '', color : '', } }

y luego en mi montado en escribí esto:

 this.cars.id = "test-01-test"; this.cars.id["test-01-test"].color="blue"; console.log(this.cars);

Pero la consola dice que:

No se puede establecer la propiedad 'color' de indefinido

Quiero configurar el color y similares mi primer ejemplo, ¿cómo puedo hacerlo?

Lo que estoy tratando de hacer es agregar ID dinámicamente. Si hago algo como esto (imagina que les pido a los usuarios con un modal que inserten un nuevo auto con una nueva identificación):

 this.cars[id] = "test-02-test" //test-02-test was given by the user's input

Quiero crear un nuevo objeto con el valor "test-02-test" y luego poner el color y la marca para que mis datos se vean así:

 Cars { "test-01-test" : { brand: 'anybrand', color: 'blue, }, "test-02-test" : { brand: 'anybrand', color: 'blue, }
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Lo que hiciste es:

 let cars = { id: { brand: '', color: '', } }; cars.id = "test-01-test"; console.log(cars);

En su lugar, debe hacer:

 let cars = { id: { brand: '', color: '', } }; console.log(cars); cars.id.color = "blue"; console.log(cars);

o dinámicamente:

 let cars = { peugeot: { brand: '', color: '', }, citroen: { brand: '', color: '', } }; let id = 'citroen' cars[id].color = "blue"; console.log(cars);

Puede agregar una nueva identificación como a continuación:

 let cars = { peugeot: { brand: '', color: '', }, citroen: { brand: '', color: '', } }; let id = 'ford' cars[id] = { brand: '', color: '', }; console.log(cars);

o con https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

 let cars = { peugeot: { brand: '', color: '', }, citroen: { brand: '', color: '', } }; cars = {...cars, dodge: { brand: '', color: '', } } console.log(cars);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Tu identificación es una clave dentro de este objeto.

Probar:

 let cars = { "test-01-test" : { brand : 'anybrand', color : 'blue', } } console.log(cars["test-01-test"].color) // Output: blue
about 4 years ago · Juan Pablo Isaza Denunciar

0

Porque el identificador distingue entre mayúsculas y minúsculas. Una función definida en el ámbito global, 'esto' se refiere en este objeto de ventana de función, cuando accede a 'esto' en la función, se refiere a window.cars. Entonces, window.cars no es igual a window.Cars.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda